{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Lecture 26 - Advanced Curve Fitting: Deep Neural Networks (DNN) \n",
    "\n",
    "## Objectives\n",
    "\n",
    "+ to introduce Deep Neural Networks as function approximators. \n",
    "+ to set up and train DNNs in `PyTorch`.\n",
    "+ to introduce Physics-informed Neural Networks (PINNs) and solve a few simple PDEs. \n",
    "\n",
    "## References \n",
    "\n",
    "+ Stanford CS231n course notes and video lectures (https://cs231n.github.io/). \n",
    "\n",
    "+ Physics-informed neural networks (Raissi et al, 2017) - Part I - https://arxiv.org/abs/1711.10561, Part II - https://arxiv.org/abs/1711.10566."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "\n",
    "import torch\n",
    "from torch import nn\n",
    "\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.preprocessing import StandardScaler\n",
    "import six\n",
    "from tqdm import tqdm_notebook\n",
    "\n",
    "import matplotlib.pyplot as plt \n",
    "import seaborn as sns \n",
    "sns.set()\n",
    "%matplotlib inline "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Review - generalized linear models (GLMs)\n",
    "\n",
    "We introduced generalized linear models as parametric function approximations earlier in course. Without loss of generality, the GLM approximation of a scalar function $f : \\mathcal{X} \\rightarrow \\mathcal{Y}$ can be expressed as:\n",
    "$$\n",
    "f(\\mathbf{x}) = \\mathbf{w}^T \\phi(\\mathbf{x}),\n",
    "$$\n",
    "\n",
    "where, $\\phi(\\mathbf{x}) = (\\phi_1(\\mathbf{x}), \\phi_2(\\mathbf{x}), \\dots, \\phi_M(\\mathbf{x}))^T$ is a vector of basis functions and $\\mathbf{w}$ is a vector of weights. The regression task is the problem of inferring the parameters $\\mathbf{w}$ from a given dataset. To summarize, given a dataset of observations, $\\mathcal{D}$, our goal is to estimate the conditional probability - $p(\\mathbf{w}| \\mathcal{D})$. By Bayes' rule, $p(\\mathbf{w}| \\mathcal{D}) \\propto p(\\mathbf{w}) p(\\mathcal{D}|\\mathbf{w})$. \n",
    "The simplest way to do this is to approximate $p(\\mathbf{w}| \\mathcal{D})$ as a delta function centered at the mode of the posterior - leading to the classic maximum a-posteriori (MAP) estimate of $\\mathbf{w}$. \n",
    "If the prior is a Gaussian and the likelihood is also a Gaussian with fixed noise, the posterior over $\\mathbf{w}$ and the resulting predictive distribution on new test observations can both be derived in closed form. If these requirements are not satisfied we can use Markov Chain Monte Carlo (MCMC) or Variational Inference (VI) to approximate the posterior over $\\mathbf{w}$.\n",
    "\n",
    "In theory GLMs can approximate functions of any arbitrary complexity upto any arbitrary degree of tolerance. In practice one might encounter some difficulties:\n",
    "\n",
    "1. The choice of basis functions (what type and how many) is non-trivial. \n",
    "2. The number of basis functions required, when $\\mathrm{dim}(\\mathcal{X}) \\gg 1$ will explode (curse of dimensionality). \n",
    "3. etc."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Deep Neural Networks (DNNs)\n",
    "\n",
    "Deep Neural Networks are function approximators that express information in a hierarchical or layered fashion. Mathematically, deep neural networks can be expressed as:\n",
    "$$\n",
    "f(\\mathbf{x}) = f_L \\circ f_{L-1} \\circ \\cdots \\circ f_1( \\mathbf{x}).\n",
    "$$\n",
    "\n",
    "In it's simplest setting, the layers $f_i$s are a composition of an elementwise nonlinearity with a linear transformation:\n",
    "$$\n",
    "f_i ( \\mathbf{z} ) = \\sigma_i ( \\mathbf{W}_i^{T} \\mathbf{z} + \\mathbf{b}_i  ),\n",
    "$$\n",
    "\n",
    "where, $\\mathbf{W}_i \\in \\mathbb{R}^{d_{z} \\times  d_i}, \\mathbf{b}_i \\in \\mathbb{R}^{d_i}$, where, $d_z = \\mathrm{dim}(\\mathbf{z})$, the dimensionality of the inputs to the $f_i$, $d_i$ is the dimensionality of the output from $f_i$ and $\\sigma_i$ is the elementwise nonlinearity. A function with this structure is called a *fully-connected* network. \n",
    "\n",
    "In deep learning parlance the matrix $\\mathbf{W_i}$ is referred to as a *weight* matrix, the vector $\\mathbf{b}_i$ is referred to as a *bias* and the function $\\sigma_i(\\cdot)$ is referred to as the *activation* function. It is typical for all but last layer of a DNN to have the same activation function. \n",
    "\n",
    "At the final layer, the dimensionality of the output $d_L$ and the activation function at the final layer, $\\sigma_L$ is dictated by constraints on the final output of the function $f$. For example:\n",
    "1. If the output from $f$ is a real number with no constraints, $d_L=1$ and $\\sigma_L(x) = 1$.\n",
    "2. If the output from $f$ is a positive real, $d_L = 1$ and $\\sigma_L(x) = \\exp(x)$. \n",
    "3. If the output from $f$ is a probability mass function on $K$ categories, $d_L = K$ and $\\sigma_L (x)_i = \\frac{\\exp(x_i)}{\\sum_{j=1}^{K} \\exp(x_j)}, i=1, 2, \\dots, K$.\n",
    "4. etc.\n",
    "\n",
    "Different ways of constructing the compositional structure of $f$ lead to different *architectures* such as fully connected networks (shown above), *recurrent neural networks*, *convolutional neural networks*, *autoencoders*, *residual networks* etc. etc. \n",
    "\n",
    "###  Activation functions \n",
    "\n",
    "The most common activation functions include the rectified Linear Units or ReLU (and variants), sigmoid functions, hyperolic tangents, sinusoids, step functions etc. A useful way to think about activation functions is that they are analogous to the effect of covariance functions on the regularity of Gaussian process sample paths - different choices of activation functions impose different regularity conditions on the sample paths of a DNN. \n",
    "\n",
    "See for instance, sample paths from a 2 hidden layer NN with different activation functions."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x576 with 4 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "relu = lambda x : np.maximum(x, 0.)\n",
    "softsign = lambda x : x / (1. + np.abs(x))\n",
    "identity = lambda x : x\n",
    "\n",
    "def NN(x, fn):\n",
    "    D = [1, 50, 50, 1]\n",
    "    Ws = [np.random.randn(D[i-1], D[i]) for i in range(1, len(D))]\n",
    "    bs = [np.random.randn(D[i]) for i in range(1, len(D))]\n",
    "    y = x\n",
    "    for i in range(len(Ws) - 1):\n",
    "        y = fn(np.dot(y, Ws[i]) + bs[i])\n",
    "    y = np.dot(y, Ws[-1]) + bs[-1]\n",
    "    return y\n",
    "\n",
    "x = np.linspace(-1., 1, 100)[:, None]\n",
    "fig, ax = plt.subplots(2, 2, figsize = (12, 8))\n",
    "\n",
    "fns = [relu, softsign, np.tanh, np.sin] \n",
    "names = ['ReLU', 'Softsign', 'Hyperbolic Tangent', 'Sine']\n",
    "continuities = ['$C^0$', '$C^1$', '$C^{\\infty}$', '$C^{\\infty}$']\n",
    "for i in range(2):\n",
    "    for j in range(2):\n",
    "        idx = 2*i + j\n",
    "        name = names[idx]\n",
    "        fn = fns[idx]\n",
    "        for k in range(5):\n",
    "            ax[i, j].plot(x, NN(x, fn))\n",
    "        ax[i, j].set_title(name+' ('+ continuities[idx] +')', fontsize=15)\n",
    "fig.tight_layout()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Probabilistic formulation\n",
    "\n",
    "\n",
    "The probabilistic formulation of DNNs follows the same approach as GLMs. We begin with a prior (say, zero-mean Gaussian with diagonal precision) on the unknown parameters (weights and biases):\n",
    "$$\n",
    "p(\\mathbf{W}_i) = \\mathcal{N}(\\mathbf{W}_i | 0, \\sigma_{W_i}^{2} \\mathbf{I}), \n",
    "$$\n",
    "and \n",
    "$$\n",
    "p(\\mathbf{b}_i) = \\mathcal{N}(\\mathbf{b}_i | 0, \\sigma_{b_i}^{2} \\mathbf{I}). \n",
    "$$\n",
    "\n",
    "Denote the flattened vector of all weights and biases collectively as $\\theta = (\\mathbf{W}_1, \\mathbf{b}_1, \\mathbf{W}_2, \\mathbf{b}_2, \\dots)$\n",
    "\n",
    "The structure of the data will inform our likelihood model. For the standard regression problem we get:\n",
    "$$\n",
    "p(\\mathbf{y}_i | \\theta ,\\mathbf{x}_i) =  \\mathcal{N} (\\mathbf{y}_i | f(\\mathbf{x}; \\theta), \\sigma^2).\n",
    "$$\n",
    "The data samples are assumed to be independent and identically distributed observations following the above likelihood model. \n",
    "\n",
    "\n",
    "The goal of inference is to then estimate the posterior distribution over the unknown weights and biases:\n",
    "$$\n",
    "p( \\theta |\\mathbf{y} ,  \\mathbf{X})  \\propto p(\\theta) p(\\mathbf{y} | \\theta , \\mathbf{X}) = p(\\theta) \\prod_{i=1}^{N} p(\\mathbf{y}_i | \\theta ,\\mathbf{x}_i).\n",
    "$$\n",
    "\n",
    "Note that the mean of the likelihood, $\\mathbb{E}[y_i | \\mathbf{x}_i, \\theta] = f(\\mathbf{x}_i ; \\theta)$ is a nonlinear function of $\\theta$. This makes posterior inference over $\\theta$ is therefore intractable in closed form. If the network has no hidden layers, $f(\\mathbf{x}; \\theta)$. The standard GLM is the special case of the DNN when it has no hidden layers, thereby making Bayesian inference analytically tractable.\n",
    "\n",
    "The most common approach to inferring the parameters of a DNN is to maximize the log of the posterior, i.e., we need to solve the optimization problem:\n",
    "\n",
    "$$\n",
    "\\theta^* = \\underset{\\theta}{\\mathrm{argmax}} \\log p( \\theta |\\mathbf{y} ,  \\mathbf{X})\n",
    "$$\n",
    "\n",
    "Assuming a flat prior over the biases and a independent Gaussian prior over all the weights (i.e., all the weight components have the same prior precision, say, $\\lambda$), we obtain the following optimization problem for DNN regression:\n",
    "\n",
    "$$\n",
    "\\theta^* = \\underset{\\theta}{\\mathrm{argmin}} \\sum_{i=1}^{N} \\frac{1}{2}(y_i - f(\\mathbf{x}_i, \\theta))^2   + \\lambda \\| \\mathbf{W} \\|_{2}^{2}\n",
    "$$\n",
    "\n",
    "You probably notice that this looks like the standard DNN loss function (upto a multiplicative constant) with the $L_2$ regularization over the network weights. \n",
    "\n",
    "In general, you will find that DNN loss functions have the structure: \n",
    "$$\n",
    "\\mathcal{L}(\\theta; \\mathbf{X}, \\mathbf{y}) = \\mathcal{D}(\\mathbf{y}, f(\\mathbf{X};\\theta)) + \\mathcal{R}(\\theta),\n",
    "$$\n",
    "\n",
    "where, $\\mathcal{D}(\\mathbf{y}, f(\\mathbf{X};\\theta))$ is a measure of the discrepancy between the DNN predictions and the data, and $\\mathcal{R}(\\theta)$ is a regularization term which corresponds to a prior over the DNN parameters and imposes specific inductive biases onto the network. For instance, selecting the Laplacian, rather than Gaussian prior, over the NN weights induces sparsity (i.e. collapses many of the DNN MAP weights to zero). \n",
    "\n",
    "For a more robust Bayesian approach to inference in DNNs, you can resort to MCMC (most commonly performed with the NUTS algorithm) or Variational Inference (typically with a mean-field Gaussian variational posterior)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Stochastic Gradient Descent\n",
    "\n",
    "There is one more ingredient that allows us to scale inference over datasets with millions of observation, namely, *stochastic gradient descent* or SGD. \n",
    "\n",
    "SGD attempts to solve stochastic optimization problems of the form: \n",
    "$$\n",
    "\\theta^* = \\underset{\\theta}{\\mathrm{argmin}} \\mathbb{E}_{\\xi \\sim p(\\xi)} [ \\mathcal{L}( \\theta ; \\xi) ]. \n",
    "$$\n",
    "where, the objective function is an expectation of a function of $\\theta$ over the random variable $\\xi$.\n",
    "SGD is an iterative method that starts with an initial estimate of the optimization variable $\\theta$, say $\\theta_0$, and updates it according to the rule: \n",
    "$$\n",
    "\\theta_i = \\theta_{i-1} - \\eta_i  \\frac{1}{M} \\sum_{j=1}^{M}\\nabla_{\\theta} \\mathcal{L}( \\theta_{i-1} ; \\xi_j),\\ i=1, 2, \\dots, \n",
    "$$\n",
    "where, $\\eta_i$ is the step-size in the $i^{th}$ iteration and $\\nabla_{\\theta}(\\cdot)$ is the gradient wrt to $\\theta$. \n",
    "The objective function is approximated with a Monte Carlo (MC) approximation. This update rule is guaranteed to converge to a local minimum of the objective function if the following conditions hold:\n",
    "$$\n",
    "\\underset{i \\rightarrow \\infty}{\\mathrm{lim}} \\eta_i = 0, \\\\\n",
    "\\sum_{i=1}^{\\infty} \\eta_i = \\infty, \\\\\n",
    "\\sum_{i=1}^{\\infty} \\eta_i^2 < \\infty.\n",
    "$$\n",
    "\n",
    "In training DNNs, the data plays the role of the random variable $\\xi$. Suppose we postulate that the data samples are drawn from some underlying distribution $(\\mathbf{x}_i, y_i) = d_i \\sim p(\\mathcal{D})$. The DNN training objective function can be expressed as the expectation of a function $\\mathcal{L}(\\theta)$ (the discrepancy + the regularizing term) over the entire dataset:\n",
    "$$\n",
    "\\theta^* = \\underset{\\theta}{\\mathrm{argmin}} \\mathbb{E}_{\\mathcal{D} \\sim p(\\mathcal{D})} [ \\mathcal{L}( \\theta ; \\mathcal{D})]. \n",
    "$$\n",
    "The expectation can be approximated with an average (i.e. Monte Carlo approximation) over a small subset of the data samples, $\\tilde{\\mathcal{D}} = {(\\mathbf{x}_i, y_i)}_{i=1}^{M} \\subset \\mathcal{D}$:\n",
    "$$\n",
    "\\theta^* = \\underset{\\theta}{\\mathrm{argmin}} \\frac{1}{M} \\sum_{i=1}^{M} \\mathcal{L}( \\theta ; \\mathbf{x}_i, y_i),\\ (\\mathbf{x}_i, y_i)  \\in \\tilde{\\mathcal{D}}.\n",
    "$$\n",
    "\n",
    "Thus, at each iteration of SGD, we only need to access and perform computations over a small subset $\\tilde{\\mathcal{D}}$ of the data instead of the full dataset $\\mathcal{D}$ which contains potentially millions of data samples. In neural network parlance, the subset $\\tilde{\\mathcal{D}}$ is called a *mini-batch*.\n",
    "\n",
    "To summarize, the training procedure goes as follows:\n",
    "\n",
    "1. Initialize all the parameters of the network $\\theta \\leftarrow \\theta_0$. \n",
    "\n",
    "2. For i = 1, 2, ..., :\n",
    "    \n",
    "    (i) Sample a subset of the dataset $\\tilde{\\mathcal{D}} \\sim p(\\mathcal{D})$. \n",
    "  \n",
    "    (ii) Compute the average loss over the minibatch $L_i = \\frac{1}{M} \\sum_{j=1}^{M} \\mathcal{L}( \\theta ; \\mathbf{x}_j, y_j)$.\n",
    "    \n",
    "    (iii) Update the weights of the network with the SGD update rule, $\\theta_i  \\leftarrow \\theta_{i-1} - \\eta_i L_i$.\n",
    "\n",
    "3. Stop when convergence criteria is met.\n",
    "\n",
    "In practice, vanilla SGD is rarely used due to numerical instabilities associated with it. There are many variants of SGD which apply preconditioning on the gradient updates to accelerate convergence to a local minimum. The most commonly used variant is the Adaptive Moments (ADAM) optimization method ([see here](https://arxiv.org/pdf/1412.6980.pdf)). \n",
    "\n",
    "## Computing gradients \n",
    "\n",
    "To be able to use SGD to train our DNNs we need to able to obtain gradients of the DNN wrt $\\theta$. As the size and structure of the network increases, deriving gradients by hand will become extremely tedious (practically impossible). Fortunately, we need not ever have to derive gradients by hand. Software libraries such as `PyTorch` use automatic differentiation to derive the gradients. Note automatic differentiation returns *exact* gradients (in contrast to the approximation of the gradient one might obtain from finite differences). "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Defining a network in `PyTorch`\n",
    "\n",
    "`PyTorch` is a library for fast numerical linear algebra and statistical computations (just like `numpy`). It comes with built-in support for GPU acceleration and automatic differentiation. It also shares a high-degree of syntactic similarity with `numpy`. Along with with `tensorflow`, it is one of the two most popular frameworks for implementing deep learning methods.\n",
    "\n",
    "`PyTorch` allows you to implement arbitrarily complex and large DNN by working with templates and utilities defined in `torch.nn`. The main class you need to know is the `torch.nn.Module` class - it serves as a convenient wrapper for defining DNNs with any arbitrary structure.\n",
    "Trainable parameters in `PyTorch`  are defined as instances of `nn.Parameter` class. The `nn.Module` class registers every instance of a parameter definition inside it's `__init__` function. \n",
    "\n",
    "Here's a basic template to implement an $L$-layer fully connected network. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "class NeuralNetwork(nn.Module):\n",
    "    \"\"\"\n",
    "    An implementation of a fully connected feed forward \n",
    "    Neural network in pytorch. \n",
    "    \"\"\"\n",
    "    def __init__(self, layersizes=[1, 1], \n",
    "                 activation=torch.relu,\n",
    "                 final_layer_activation=None):\n",
    "        \"\"\"\n",
    "        INPUTS:\n",
    "            layersizes <list/tuple>: An iterable ordered object containing\n",
    "                                 the sizes of the tensors from the\n",
    "                                 input layer to the final output. \n",
    "                                 (See example below). \n",
    "            activation <callable>: A python callable through which\n",
    "                                    torch backpropagation is possible.\n",
    "            final_layer_activation <callable>: A python callable for \n",
    "                                    the final layer activation function.\n",
    "                                    Default: None (for regression problems)\n",
    "        \n",
    "        EXAMPLE: \n",
    "            To define a NN with an input of size 2, 2 hidden layers of size \n",
    "            50 and 50, output of size 1, with tanh activation function: \n",
    "            >> layers = [2, 50, 50, 1]\n",
    "            >> neuralnet = NeuralNet(layers, activation=torch.tanh)\n",
    "            >> x = torch.randn(100, 2)   # 100 randomly sampled inputs \n",
    "            >> output = neuralnet(x)  # compute the prediction at x.\n",
    "        \n",
    "        Inheriting from nn.Module ensures that all\n",
    "        NN layers defined within the __init__ function are captured and \n",
    "        stored in an OrderedDict object for easy accesability.\n",
    "        \"\"\"\n",
    "        super(NeuralNetwork, self).__init__()\n",
    "        self.layersizes = layersizes\n",
    "        self.input_dim = self.layersizes[0]\n",
    "        self.hidden_sizes = self.layersizes[1:-1]\n",
    "        self.output_dim = self.layersizes[-1]\n",
    "        self.activation = activation\n",
    "        self.final_layer_activation = final_layer_activation\n",
    "        if self.final_layer_activation is None:\n",
    "            self.final_layer_activation = nn.Identity()\n",
    "        self.nlayers = len(self.hidden_sizes) + 1\n",
    "        self.layernames = [] ## Dictionary to store all the FC layers \n",
    "        \n",
    "        # define FC layers\n",
    "        for i in range(self.nlayers):\n",
    "            layername = 'fc_{}'.format(i+1)\n",
    "            layermodule = nn.Linear(self.layersizes[i], self.layersizes[i+1])\n",
    "            self.layernames.append(layername)\n",
    "            setattr(self, layername, layermodule)\n",
    "        \n",
    "    def forward(self, x):\n",
    "        \"\"\"\n",
    "        Implement the forward pass of the NN. \n",
    "        \"\"\"\n",
    "        for i, layername in enumerate(self.layernames):\n",
    "            fclayer = getattr(self, layername)\n",
    "            x = fclayer(x)\n",
    "            if i == self.nlayers - 1:\n",
    "                x = self.final_layer_activation(x)\n",
    "            else:\n",
    "                x = self.activation(x)\n",
    "        return x\n",
    "\n",
    "\n",
    "# # sanity check \n",
    "# net = NeuralNetwork([1, 40, 40, 40, 1], torch.tanh)\n",
    "# x = torch.linspace(0., 1., 100)[:, None]\n",
    "# for m in net.modules():\n",
    "#     print(m)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Optimizing parameters of a network in `PyTorch`\n",
    "\n",
    "Classes for all of the common SGD routines are implemented in `torch.optim`. To use a particular optimization method, you need to define an instance of it and initialize it with a iterable (list/tuple/generator) consisting of the parameters that need to be optimized and a starting step size (or learning rate). The list of parameters of any instance of a torch `Module` can be obtained with `module.parameters()`. "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Example - Motor Cycle Data\n",
    "\n",
    "Here's a demonstration of the process of setting up and training a simple fully-connected neural network. We will use the motor cycle accident dataset for this exercise. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x360 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data = np.loadtxt('motor.dat')\n",
    "X = data[:, 0][:, None]\n",
    "Y = data[:, 1][:, None]\n",
    "N = len(X)\n",
    "fig, ax = plt.subplots(figsize=(8, 5))\n",
    "ax.plot(X, Y, 'x', markeredgewidth=2)\n",
    "ax.set_xlabel('$x$')\n",
    "ax.set_ylabel('$y$');"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [],
   "source": [
    "Ntrain = int(0.7*N)\n",
    "Xtrain, Xval, Ytrain, Yval = train_test_split(X, Y, train_size=Ntrain)\n",
    "\n",
    "# scale the data\n",
    "xscaler = StandardScaler()\n",
    "yscaler = StandardScaler()\n",
    "Xtrain=xscaler.fit_transform(Xtrain)\n",
    "Ytrain=yscaler.fit_transform(Ytrain)\n",
    "Xval, Yval = xscaler.transform(Xval), yscaler.transform(Yval)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      " [Iteration  100] Validation MSE loss: 0.228\n",
      " [Iteration  200] Validation MSE loss: 0.232\n",
      " [Iteration  300] Validation MSE loss: 0.213\n",
      " [Iteration  400] Validation MSE loss: 0.213\n",
      " [Iteration  500] Validation MSE loss: 0.220\n",
      " [Iteration  600] Validation MSE loss: 0.228\n",
      " [Iteration  700] Validation MSE loss: 0.171\n",
      " [Iteration  800] Validation MSE loss: 0.197\n",
      " [Iteration  900] Validation MSE loss: 0.204\n",
      " [Iteration 1000] Validation MSE loss: 0.202\n",
      " [Iteration 1100] Validation MSE loss: 0.218\n",
      " [Iteration 1200] Validation MSE loss: 0.229\n",
      " [Iteration 1300] Validation MSE loss: 0.180\n",
      " [Iteration 1400] Validation MSE loss: 0.207\n",
      " [Iteration 1500] Validation MSE loss: 0.197\n",
      " [Iteration 1600] Validation MSE loss: 0.223\n",
      " [Iteration 1700] Validation MSE loss: 0.197\n",
      " [Iteration 1800] Validation MSE loss: 0.165\n",
      " [Iteration 1900] Validation MSE loss: 0.208\n",
      " [Iteration 2000] Validation MSE loss: 0.224\n",
      " [Iteration 2100] Validation MSE loss: 0.237\n",
      " [Iteration 2200] Validation MSE loss: 0.225\n",
      " [Iteration 2300] Validation MSE loss: 0.214\n",
      " [Iteration 2400] Validation MSE loss: 0.230\n",
      " [Iteration 2500] Validation MSE loss: 0.203\n",
      " [Iteration 2600] Validation MSE loss: 0.222\n",
      " [Iteration 2700] Validation MSE loss: 0.189\n",
      " [Iteration 2800] Validation MSE loss: 0.211\n",
      " [Iteration 2900] Validation MSE loss: 0.213\n",
      " [Iteration 3000] Validation MSE loss: 0.185\n",
      " [Iteration 3100] Validation MSE loss: 0.234\n",
      " [Iteration 3200] Validation MSE loss: 0.193\n",
      " [Iteration 3300] Validation MSE loss: 0.222\n",
      " [Iteration 3400] Validation MSE loss: 0.191\n",
      " [Iteration 3500] Validation MSE loss: 0.202\n",
      " [Iteration 3600] Validation MSE loss: 0.195\n",
      " [Iteration 3700] Validation MSE loss: 0.189\n",
      " [Iteration 3800] Validation MSE loss: 0.194\n",
      " [Iteration 3900] Validation MSE loss: 0.235\n",
      " [Iteration 4000] Validation MSE loss: 0.211\n",
      " [Iteration 4100] Validation MSE loss: 0.182\n",
      " [Iteration 4200] Validation MSE loss: 0.199\n",
      " [Iteration 4300] Validation MSE loss: 0.222\n",
      " [Iteration 4400] Validation MSE loss: 0.230\n",
      " [Iteration 4500] Validation MSE loss: 0.197\n",
      " [Iteration 4600] Validation MSE loss: 0.190\n",
      " [Iteration 4700] Validation MSE loss: 0.186\n",
      " [Iteration 4800] Validation MSE loss: 0.218\n",
      " [Iteration 4900] Validation MSE loss: 0.199\n",
      " [Iteration 5000] Validation MSE loss: 0.175\n"
     ]
    }
   ],
   "source": [
    "# instantiate the network \n",
    "layersizes = [1, 20, 20, 1]\n",
    "activation = torch.tanh\n",
    "net = NeuralNetwork(layersizes=layersizes, \n",
    "                    activation=activation)\n",
    "\n",
    "# define a misfit function\n",
    "mse = nn.MSELoss()\n",
    "\n",
    "## L2 regularization\n",
    "lmbda = 1e-3 # reg. constant \n",
    "def L2loss(lmbda, net):\n",
    "    reg = torch.tensor(0.)\n",
    "    for m in net.modules():\n",
    "        if hasattr(m, 'weight'):\n",
    "            reg += m.weight.norm()**2\n",
    "    return lmbda*reg\n",
    "\n",
    "### define an optimizer \n",
    "lr = 1e-2\n",
    "update = torch.optim.Adam(params=net.parameters(), lr=lr)\n",
    "\n",
    "# training loop params \n",
    "maxiter = 5000\n",
    "batchsize = 32\n",
    "Xtrain, Ytrain = torch.Tensor(Xtrain), torch.Tensor(Ytrain)\n",
    "Xval, Yval = torch.Tensor(Xval), torch.Tensor(Yval)\n",
    "best_stat_dict = net.state_dict()\n",
    "best_val_mse_loss = np.inf\n",
    "\n",
    "## training loop \n",
    "for i in range(maxiter):\n",
    "    # sample a batch of data \n",
    "    batchidx = np.random.randint(0, len(Xtrain), batchsize)\n",
    "    xbatch, ybatch = Xtrain[batchidx], Ytrain[batchidx]\n",
    "    \n",
    "    # zero out the gradient buffers\n",
    "    update.zero_grad()\n",
    "    \n",
    "    #forward prop \n",
    "    ypred = net(xbatch)\n",
    "    \n",
    "    # compute the regularized loss \n",
    "    loss = mse(ypred, ybatch) + L2loss(lmbda, net)\n",
    "    \n",
    "    # back prop to get gradients \n",
    "    loss.backward()\n",
    "    \n",
    "    # take one optimization step\n",
    "    update.step()\n",
    "    \n",
    "    # print progress \n",
    "    if (i+1)%100 == 0:\n",
    "        val_mse_loss = mse(Yval, net(Xval))\n",
    "        print(' [Iteration %4d] Validation MSE loss: %.3f'%(i+1, val_mse_loss))\n",
    "        if val_mse_loss < best_val_mse_loss:\n",
    "            best_state_dict = net.state_dict()\n",
    "net.load_state_dict(best_stat_dict);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x13ecf5908>"
      ]
     },
     "execution_count": 60,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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Negxf/vbPRw4sJ+zzz6XjIwM3n33bR588O8YjSb/smxffm7SWfa8+VFNdKK9fxEJj6RJvN76eD8vr95DizN2T3titZi49NSxfO3kURHb59tvv8H777/LhRdezE9/+kv/KZeuvfZGbrnlen7/+7t55pllmEwmnnvuKdxuNw89tJiCAl8SdNtt3+Wmm67ltdde4nvf+wEjRozkxhtvZsmSf1FUVDToOqbm5maeeOJRAH9hepuammruvffvzJkzz79tw4bPeeqpx5k7dx5/+MM9WK1WAL797Vu59dYb+eMff8/cufPIyspizZrVrFjxHqeddga/+91/k5KSAsDTTz/B/ff/pdfYFi9+mD17dnPddYv4zne+79/ednTpm2++xoIFV+B2u3nnnTeZOfME/3i0tLR0er777ruXQ4cOcuutd3DjjTf7t69c+QG/+MX/4Xe/+zVPPfV80GPKyg7z2GNP++v3Lr/8Cq677gpeeeVFf+LVl59bamp0DloQEUk2SZN4vf3J/phOugBanG7e/mR/RBOv1157GaPRyJ133hV0nsuRI0dx8cWX88wzT/D5558ye/ZcPB4PABs3buCcc84DICUlhb/85X7S0tIG9cf70KEDPPLI/wZtq6mpZs2a1VRUlHPSSXO48MKLg27PyMhg9uyTO70egO9//4f+pAsgNzePq6++jnvv/R9WrnyPiy66jOXL3wZ8SUhb0gVw9dXXsWzZ85SVHeox5uXL3yEnJ6fT0uQVV1yN0+lk5Mi+/xybm5tZseI9Ro4cFZR0AZx55tnMn386paWr2Lz5SyZPnu6/7dxzzw86aGLkyFEMHz6CAwf24/F4MBqNYf25iYhI/yRN4nXBnFFxMeN1wZzIJV0Advs2rNZUnn32yU63HTp0AIAdO7Yze/ZcLrlkAWvXlvLrX/+Mhx8ezbx58znllFM58cTZg64TOnToYFAPMqPRSHp6BqNHj+GKK65m4cIrO50AvaRkWKdzCNrtWwF47713+eCD94JuO3KkzP96AHbu3IHFYmXs2PGd4pk+fUaPiZfDUUtFRTlz587r9Nqzs7O5445/6+0lB9mzZxetra2datDazJw5i9LSVezYsT0o8eoqucvIyMTr9eJyubBYLGH9uUlkqZu9SPxLmk/dr508qteZJLPZiMvliVBE0ed2u2lqagTosfGqw+Eraj/jjLP4y18e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\n",
      "text/plain": [
       "<Figure size 720x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "Xtest = torch.Tensor(xscaler.transform(np.linspace(0., 60., 1000)[:, None]))\n",
    "Ypred = net(Xtest)\n",
    "\n",
    "plt.figure( figsize=(10, 8) )\n",
    "plt.plot(xscaler.inverse_transform(Xtest.data.numpy()), \n",
    "         yscaler.inverse_transform(Ypred.data.numpy()),\n",
    "         linewidth=3,\n",
    "         label='Test Predictions')\n",
    "plt.plot(X, Y, 'ro', label='Data')\n",
    "plt.legend(loc='best', fontsize=20)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Non-exhaustive list of topics not covered here:\n",
    "\n",
    "1. Regularizing a neural network with techniques such as dropout (`nn.Dropout`), batch normalization (`nn.BatchNorm1D`, `nn.BatchNorm2D`, `nn.BatchNorm3D`).\n",
    "\n",
    "2. Weight Initialization (uniform, normal, [Xavier initialization](http://proceedings.mlr.press/v9/glorot10a/glorot10a.pdf), [He initialization](https://arxiv.org/pdf/1502.01852.pdf) etc.) All common initialization techniques can be found under `nn.init` ([see here](https://pytorch.org/docs/stable/nn.init.html#nn-init-doc)).\n",
    "\n",
    "3. Learning rate (or step size) schedule (Step schedule, exponential schedule, cosine annealing etc.) ([look for the section on how to adjust learning rate here](https://pytorch.org/docs/stable/optim.html)).\n",
    "\n",
    "4. Hyperparameter optimization (grid search, cross-validation, Bayesian optimization etc.)\n",
    "\n",
    "5. Model averaging. \n",
    "\n",
    "6. Stochastic weight averaging - https://arxiv.org/abs/1803.05407. This feature is available in `PyTorch`; [see here](https://pytorch.org/blog/stochastic-weight-averaging-in-pytorch/?utm_source=social-facebook&utm_medium=PyTorch&utm_campaign=organic&utm_content=post-url&utm_offering=artificial-intelligence&utm_product=AIStochasticWeight_050819&fbclid=IwAR28pSPYvd-9Qlx2nOvZF7c965TcnvNQENytm1HKQy1vKLHNifEZRzp5S8s)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Bayesian Neural Network \n",
    "\n",
    "Starting with a prior $p(\\theta)$ on the DNN weights and biases and a likelihood model $p(\\mathcal{D} | \\theta)$, we wish to approximate the posterior distribution over the DNN weights and biases $p(\\theta | \\mathcal{D})$. \n",
    "\n",
    "To efficiently implement and train a Bayesian Neural Network, we will use the `pyro` probabilistic programming library which is written on top of `PyTorch`. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 130,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pyro\n",
    "import pyro.distributions as dist \n",
    "from pyro import infer\n",
    "from pyro import optim \n",
    "from pyro.contrib import autoguide\n",
    "from pyro.nn import PyroSample, PyroModule"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 157,
   "metadata": {},
   "outputs": [],
   "source": [
    "class BayesianNeuralNetwork( PyroModule ):\n",
    "    def __init__(self, layersizes=[1, 1], activation = torch.tanh,\n",
    "                 final_layer_activation = None, \n",
    "                 prior_scale = 0.1, \n",
    "                 sigma = 0.1):\n",
    "        \"\"\"\n",
    "        INPUTS:\n",
    "            layersizes <list/tuple>: An iterable ordered object containing\n",
    "                                 the sizes of the tensors from the\n",
    "                                 input layer to the final output. \n",
    "                                 (See example below). \n",
    "            activation <callable>: A python callable through which\n",
    "                                    torch backpropagation is possible.\n",
    "            final_layer_activation <callable>: A python callable for \n",
    "                                    the final layer activation function.\n",
    "                                    Default: None (for regression problems)\n",
    "            prior_scale <float>: The prior standard deviation over the weights. \n",
    "            sigma <float>: The likelihood noise standard deviation\n",
    "        \"\"\"\n",
    "        super(BayesianNeuralNetwork, self).__init__()\n",
    "        self.prior_scale = prior_scale\n",
    "        self.sigma       = sigma\n",
    "        self.layersizes = layersizes\n",
    "        self.input_dim = self.layersizes[0]\n",
    "        self.hidden_sizes = self.layersizes[1:-1]\n",
    "        self.output_dim = self.layersizes[-1]\n",
    "        self.activation = activation\n",
    "        self.final_layer_activation = final_layer_activation\n",
    "        if self.final_layer_activation is None:\n",
    "            self.final_layer_activation = nn.Identity()\n",
    "        self.nlayers = len(self.hidden_sizes) + 1\n",
    "        self.layernames = [] \n",
    "        \n",
    "        # define FC layers\n",
    "        # to treat the parameters of the network as latent variables\n",
    "        # place priors over them using PyroSample \n",
    "        for i in range(self.nlayers):\n",
    "            layername = 'fc_{}'.format(i+1)\n",
    "            self.layernames.append(layername)\n",
    "            layer = PyroModule[nn.Linear](self.layersizes[i], self.layersizes[i+1])\n",
    "            weightprior = dist.Normal(0., prior_scale).expand(layer.weight.shape).to_event(2)\n",
    "            biasprior = dist.Normal(0., prior_scale).expand(layer.bias.shape).to_event(1)\n",
    "            layer.weight = PyroSample(weightprior)\n",
    "            layer.bias = PyroSample(biasprior)\n",
    "            setattr(self, layername, layer)\n",
    "        \n",
    "    def forward(self, x, y=None):\n",
    "        \"\"\"\n",
    "        Specify the generative process here. \n",
    "        \n",
    "        INPUTS:\n",
    "            x -> Input features on which to condition the observations. \n",
    "            y -> Observed data. \n",
    "            \n",
    "        RETURNS:\n",
    "            loc -> Predictive mean.\n",
    "        \"\"\"\n",
    "        ysigma = self.sigma \n",
    "        \n",
    "        # get the mean \n",
    "        ymean = x\n",
    "        for i, layername in enumerate(self.layernames):\n",
    "            fclayer = getattr(self, layername)\n",
    "            ymean = fclayer(ymean)\n",
    "            if i == self.nlayers - 1:\n",
    "                ymean = self.final_layer_activation( ymean )\n",
    "            else:\n",
    "                ymean = self.activation( ymean )\n",
    "        ymean = ymean[:,0]\n",
    "                \n",
    "        # pyro.plate will take care of mini batch scaling \n",
    "        with pyro.plate('data', x.shape[0]):\n",
    "            y = pyro.sample('y', dist.Normal(ymean, ysigma), obs=y)\n",
    "        \n",
    "        return ymean"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 158,
   "metadata": {},
   "outputs": [],
   "source": [
    "# instantiate the Bayesian Neural network \n",
    "prior_scale = 1.\n",
    "sigma = 1e-1\n",
    "bnn = BayesianNeuralNetwork(layersizes=[1, 200, 1], \n",
    "                            prior_scale=prior_scale,\n",
    "                            sigma=1e-1)   # this will be the pyro `model` "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "`pyro` has several choices for the variational posterior:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 159,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['AutoCallable',\n",
       " 'AutoContinuous',\n",
       " 'AutoDelta',\n",
       " 'AutoDiagonalNormal',\n",
       " 'AutoDiscreteParallel',\n",
       " 'AutoGuide',\n",
       " 'AutoGuideList',\n",
       " 'AutoIAFNormal',\n",
       " 'AutoLaplaceApproximation',\n",
       " 'AutoLowRankMultivariateNormal',\n",
       " 'AutoMultivariateNormal',\n",
       " 'AutoNormal',\n",
       " 'AutoNormalizingFlow']"
      ]
     },
     "execution_count": 159,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "[name for name in dir(infer.autoguide) if 'Auto' in name]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 160,
   "metadata": {},
   "outputs": [],
   "source": [
    "# training validation splot and preprocessing \n",
    "Ntrain = int(0.7*N)\n",
    "Xtrain, Xval, Ytrain, Yval = train_test_split(X, Y, train_size=Ntrain)\n",
    "\n",
    "# scale the data\n",
    "xscaler = StandardScaler()\n",
    "yscaler = StandardScaler()\n",
    "Xtrain=xscaler.fit_transform(Xtrain)\n",
    "Ytrain=yscaler.fit_transform(Ytrain)\n",
    "Xval, Yval = xscaler.transform(Xval), yscaler.transform(Yval)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 161,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/Users/rohitkt10/anaconda3/lib/python3.6/site-packages/ipykernel_launcher.py:26: TqdmDeprecationWarning: This function will be removed in tqdm==5.0.0\n",
      "Please use `tqdm.notebook.tqdm` instead of `tqdm.tqdm_notebook`\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "137279d289d44a0d89fad56249caeded",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "HBox(children=(FloatProgress(value=0.0, max=5000.0), HTML(value='')))"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "# instantiate the variational posterior \n",
    "q_bnn = infer.autoguide.AutoDiagonalNormal( bnn )\n",
    "\n",
    "# always clear the parameter store before inference\n",
    "pyro.clear_param_store()  \n",
    "\n",
    "# define a loss function \n",
    "loss = infer.trace_elbo.Trace_ELBO(num_particles=5)\n",
    "\n",
    "# define an optimizer \n",
    "optim_dict = {'lr':1e-2}  # dictionary of optimizer settings\n",
    "optimizer = pyro.optim.Adam(optim_dict)\n",
    "\n",
    "# instantiate the inference engine \n",
    "svi = infer.SVI(model=bnn, \n",
    "                guide=q_bnn, \n",
    "                optim=optimizer, \n",
    "                loss=loss)\n",
    "\n",
    "### TRAINING LOOP ###\n",
    "niters = 5000\n",
    "losses = []\n",
    "Xtrain, Ytrain = torch.Tensor(Xtrain), torch.Tensor(Ytrain)\n",
    "Xval, Yval = torch.Tensor(Xval), torch.Tensor(Yval)\n",
    "data = torch.Tensor(Y)\n",
    "for i in tqdm_notebook(range(niters)):\n",
    "    loss = svi.step(Xtrain, Ytrain[:,0])\n",
    "    losses.append(loss)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's check the ELBO."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 162,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsgAAAI4CAYAAAB3OR9vAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nOzdd3xb1f3/8Zck771XnJ34xs7ee7IJm1IoI7Ts0TIKpWkpXZSWskoZbZk/SstooePbUjqgYYaVkAZISG5IyCA7cRzHibet3x8alqxh2bGGrffz8cgj0tGV7pGvbH3uuZ/zORa73Y6IiIiIiDhYo90BEREREZFYogBZRERERMSDAmQREREREQ8KkEVEREREPCREuwMxLhmYCuwC2qLcFxERERHpPTagFFgBNHk+oAA5uKnAW9HuhIiIiIiEzVzgbc8GBcjB7QKoqTlCe3vkyuHl52dQXX04YvuT8NGx7D90LPsPHcv+Rcez/4j0sbRaLeTmpoMz3vOkADm4NoD2dntEA2TXPqV/0LHsP3Qs+w8dy/5Fx7P/iNKx9Emj1SQ9EREREREPCpBFRERERDwoQBYRERER8aAAWURERETEgwJkEREREREPCpBFRERERDwoQBYRERER8aAAWURERETEgwJkEREREREPCpBFRERERDwoQBYRERER8aAAWURERETEgwJkEREREREPCpBFRERERDwoQBYRERER8aAAWURERETEgwJkEREREREPCpBFRERERDwoQBYRERER8aAAWURERETEgwJkERERkV5WV9/Mh+beaHcDgHa7nXVbDtDebmfjjtoev86azdU8+8qGLrf7fOchfvb7D2lpbXPvf+X6vbTb7T3ed6QpQBYREZG4dOBQI39ctjFg4PbOml2sXO8/yN26uw57gOfZ7Xauf+BtHv7LGurqm3ulr3a7nSONLT167n8++IK7n1/NHb9byU9/9yGbdtTS0trG8k928fbHu0J+nfv+8BGvfri9y+2efXUDn22v5fOdh/j78s3854Mv+NVf1/DHZRvd7+U/H2zjUC/9bMIhIdodEBERkZ5pb7djx47NGvvjXfWNLfz4qZVcfcYYBpdkduu5Bw418vhLn5KbmczZ84eTl5Xis01LazvffOhtLj5xFFNGFQV9vRde38ihw83sr23E/OIgk41Chg/I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\n",
      "text/plain": [
       "<Figure size 720x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(10, 8))\n",
    "losses = np.array(losses)\n",
    "plt.plot(np.arange(1, niters+1), -losses)\n",
    "plt.ylabel('ELBO', fontsize=15)\n",
    "plt.xlabel('Iteration', fontsize=15)\n",
    "plt.tight_layout()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now let's get the posterior predictive samples. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 167,
   "metadata": {},
   "outputs": [],
   "source": [
    "Xtest = torch.Tensor(xscaler.transform(np.linspace(0., 60., 500)[:, None]))\n",
    "predictor = infer.Predictive(model=bnn, \n",
    "                             guide=q_bnn, \n",
    "                             num_samples=1000, \n",
    "                             return_sites=(\"y\", \"_RETURN\"))\n",
    "ppsamples = predictor(Xtest)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 168,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "ppmean = ppsamples[\"_RETURN\"].data.numpy().mean(0)\n",
    "ppmean = yscaler.inverse_transform(ppmean)\n",
    "pplow, pphigh = np.percentile(ppsamples[\"_RETURN\"].data.numpy(), axis=0, q=[2.5, 97.5])\n",
    "pplow = yscaler.inverse_transform(pplow)\n",
    "pphigh = yscaler.inverse_transform(pphigh)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 169,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x146a95400>"
      ]
     },
     "execution_count": 169,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure( figsize=(10, 8) )\n",
    "Xtest=xscaler.inverse_transform(Xtest.data.numpy())\n",
    "plt.plot(Xtest, \n",
    "         ppmean,\n",
    "         linewidth=3,\n",
    "         label='Test Predictions')\n",
    "plt.fill_between(Xtest[:,0], pplow, pphigh, alpha=0.25, label='95% interval')\n",
    "plt.plot(X, Y, 'ro', label='Data')\n",
    "\n",
    "plt.legend(loc='best', fontsize=20)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Computational challenges of training BNNs\n",
    "\n",
    "Training DNNs in a truly Bayesian way is challenging for a number of reasons:\n",
    "\n",
    "1. Since the likelihood mean is nonlinear, the model evidence is intractable in closed form - we cannot leverage conjugacy. \n",
    "\n",
    "2. A DNN is typically highly overparameterized. This means we have to perform approximate inference in a very high-dimensional space; there is a non-trivial space cost in addition to time cost for Bayesian training of DNNs. For example, say a DNN has $N$ weights and biases in total. \n",
    "\n",
    "    (i) The performance of Metropolis-Hastings degrades rapidly with the number of parameters, requiring tens of thousands (or more) simulations to reach equilibrium. In practice, one often finds that classical MH samplers simply do not converge. If the sampler does converge, and say after burning and thinning you retain 1000 samples from the MCMC trace, you need to store $1000N$ floating point numbers in memory to compute posterior expectations.\n",
    "    \n",
    "    (ii) The HMC/NUTS approach to inference is based on simulating a hypothetical Hamiltonian system where the vector of latent variables $\\theta$ are augmented with a vector of momentum variables $\\mathbf{r}$ of the same size. At any given iteration of HMC/NUTS you work with $2N$ variables in memory. \n",
    "    \n",
    "    (iii) The most cost efficient Variational Inference approximation is a mean field Gaussian $p(\\theta | \\mathcal{D}) \\approx q(\\theta) = \\prod_{i=1}^{N} q(\\theta_i)$, where, $q(\\theta_i) = \\mathcal{N}(\\theta_i | \\mu_i, \\sigma_i^2)$. Using this variational approximation you will capture one of the modes of the posterior and none of the correlation across parameters. To be able to compute expectations afterwards, you need to be able to store $2N$ parameters in memory (all the $\\mu_i$s and $\\sigma_i$s). \n",
    "    \n",
    "    (iv) A full-rank Gaussian variational posterior has memory requirements of $\\mathcal{O}(N + N^2)$ - which, for reasonably large DNNs, is not feasible. \n",
    "    \n",
    "    (v) A compromise variational approximation between the mean field Gaussian and the full rank Gaussian is to use a Gaussian whose covariance matrix is a diagonal with a low-rank update. Such a variational posterior has memory requirements of $\\mathcal{O}((2+r)N)$, where, $r$ is the rank of the update.\n",
    "    \n",
    "    (vi) VI, of any kind, is prone to getting trapped in a bad local minima of the negative ELBO. "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Physics-informed Deep Neural Networks \n",
    "\n",
    "\n",
    "Because DNNs afford a great deal of flexibility in their structure and training methodology, they find use in many non-traditional machine learning tasks. A recently emergent area of research in scientific machine learning is the application of DNNs to the task of partial differential equations (PDEs) (see the references). \n",
    "\n",
    "The idea is simple. Say we have a PDE of the form:\n",
    "$$\n",
    "\\frac{\\partial u}{\\partial t} + \\mathcal{N}\\left[u, \\frac{\\partial u}{\\partial x}, \\dots \\right]=0, \\ \\forall \\mathbf{x} \\in \\Omega, \\ t \\in [0, T],\n",
    "$$\n",
    "\n",
    "subject to initial conditions $u(\\mathbf{x}, 0) = g(\\mathbf{x})$ and boundary conditions $u(\\mathbf{x}, t) = h(\\mathbf{x}, t)$. \n",
    "\n",
    "We start with a DNN trial solution, $u(x, t) = \\varphi(x, t; \\theta)$, where, $\\theta$ represents all the tunable parameters of the network. Suppose we sample a bunch of collocation points inside the PDE domain $\\{ \\mathbf{x}^{(i)} \\}_i \\subset \\Omega$ and a bunch of collocation points $\\{t^{(i)}\\}_i \\in (0, T]$. For $\\varphi$ to accurate represent the solution, the LHS of the PDE, evaluated at these collocation points, must be 0. We can therefore formulate a loss function of the form:\n",
    "$$\n",
    "\\mathcal{R}_{\\Omega} = \\frac{1}{N_{\\Omega}} \\sum_{i}\\left( \\frac{\\partial u}{\\partial t}\\Big|_{x=x^{(i)}, t=t^{(i)}} + \\mathcal{N}\\left[u, \\frac{\\partial u}{\\partial x}, \\dots \\right]\\Big|_{x=x^{(i)}, t=t^{(i)}} \\right)^2,\n",
    "$$\n",
    "where, $N_{\\Omega}$ is the number of collocation points.  This is the squared residual of the PDE at the collocation points. \n",
    "\n",
    "We can similarly take a set of collocation points in space and time, sampled arbitrarily, and formulate a boundary residual:\n",
    "$$\n",
    "\\mathcal{R}_{\\partial \\Omega} =\\frac{1}{N_{\\partial\\Omega}} \\sum_{i} h(\\mathbf{x}, t)^2\\Big|_{x=x^{(i)}, t=t^{(i)}},\n",
    "$$\n",
    "where, $N_{\\partial\\Omega}$ is the number of boundary collocation points. Similarly, the initial conditions residual will be:\n",
    "$$\n",
    "\\mathcal{R}_{t} =\\frac{1}{N_{t}} \\sum_{i} g(\\mathbf{x})^2\\Big|_{x=x^{(i)}}.\n",
    "$$\n",
    "\n",
    "We can take all the derivatives necessary to construct these residuals for free using automatic differentiation (`torch.autograd.grad` in `PyTorch`). All of these residual terms individually are functions of the parameters $\\theta$ of the DNN $\\varphi$ and we can compose a total residual loss function by adding them up:\n",
    "$$\n",
    "\\mathcal{R}(\\theta) = \\mathcal{R}_{ \\Omega}(\\theta) + \\mathcal{R}_{\\partial \\Omega}(\\theta) + \\mathcal{R}_{t}(\\theta).\n",
    "$$\n",
    "\n",
    "Now all we have to do is to use SGD to solve the optimization problem:\n",
    "$$\n",
    "\\theta^* = \\underset{\\theta}{\\mathrm{argmin}}\\mathcal{R}(\\theta).\n",
    "$$\n",
    "\n",
    "Below we demonstrate this idea by applying it to the Burgers' equation in 1D. "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Burgers' Equation in 1D\n",
    "\n",
    "$$\n",
    "\\frac{\\partial u}{\\partial t} + u \\frac{\\partial u}{\\partial x} = \\frac{0.01}{\\pi} \\frac{\\partial^2 u}{\\partial x}, \\ x \\in [-1, 1],\\ t \\in [0, 1],\n",
    "$$\n",
    "\n",
    "subject to initial conditions:\n",
    "$$\n",
    "u(0, x) = -\\sin \\pi x, \n",
    "$$\n",
    "and periodic boundary conditions:\n",
    "$$\n",
    "u(t, -1) = u(t, 1).\n",
    "$$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 243,
   "metadata": {},
   "outputs": [],
   "source": [
    "def sqresidual(net, x, t):\n",
    "    assert x.requires_grad == True and t.requires_grad == True\n",
    "    X = torch.stack([x, t], 1).squeeze(-1)\n",
    "    u = net(X)\n",
    "    ux = grad(u, x, retain_graph=True, create_graph=True, grad_outputs=torch.ones_like(u))[0]\n",
    "    ut = grad(u, t, retain_graph=True, create_graph=True, grad_outputs=torch.ones_like(u))[0]\n",
    "    uxx = grad(ux, x, retain_graph=True, create_graph=True, grad_outputs=torch.ones_like(ux))[0]\n",
    "    residual = ut + u*ux - (0.01/np.pi)*uxx\n",
    "    return torch.norm(residual)**2\n",
    "\n",
    "def boundaryresidual(net, t):\n",
    "    leftx = -torch.ones_like(t, requires_grad=True)\n",
    "    leftX = torch.stack([leftx, t], 1).squeeze(-1)\n",
    "    \n",
    "    rightx = torch.ones_like(t, requires_grad=True)\n",
    "    rightX = torch.stack([leftx, t], 1).squeeze(-1)\n",
    "    \n",
    "    leftU = net(leftX)\n",
    "    rightU = net(rightX)\n",
    "    boundary_res = torch.norm(leftU-rightU)**2\n",
    "    \n",
    "    return boundary_res\n",
    "    \n",
    "    \n",
    "def initialcond_residual(net, x):\n",
    "    initt = torch.zeros_like(x, requires_grad=True)\n",
    "    initX = torch.stack([x, initt], 1).squeeze(-1)\n",
    "    \n",
    "    initU = net(initX)\n",
    "    init_res = torch.norm(initU + torch.sin(np.pi*x))**2\n",
    "    return init_res\n",
    "\n",
    "def L2loss(lmbda, net):\n",
    "    reg = torch.tensor(0.)\n",
    "    for m in net.modules():\n",
    "        if hasattr(m, 'weight'):\n",
    "            reg += m.weight.norm()**2\n",
    "    return lmbda*reg"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 251,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      " [Iteration  100] Validation Squared Residual: 10.17115\n",
      " [Iteration  200] Validation Squared Residual: 8.47603\n",
      " [Iteration  300] Validation Squared Residual: 8.76725\n",
      " [Iteration  400] Validation Squared Residual: 8.79585\n",
      " [Iteration  500] Validation Squared Residual: 8.08372\n",
      " [Iteration  600] Validation Squared Residual: 9.79117\n",
      " [Iteration  700] Validation Squared Residual: 9.11616\n",
      " [Iteration  800] Validation Squared Residual: 6.07924\n",
      " [Iteration  900] Validation Squared Residual: 5.83025\n",
      " [Iteration 1000] Validation Squared Residual: 2.69280\n",
      " [Iteration 1100] Validation Squared Residual: 5.42795\n",
      " [Iteration 1200] Validation Squared Residual: 3.44732\n",
      " [Iteration 1300] Validation Squared Residual: 2.85521\n",
      " [Iteration 1400] Validation Squared Residual: 1.63377\n",
      " [Iteration 1500] Validation Squared Residual: 3.23787\n",
      " [Iteration 1600] Validation Squared Residual: 1.30064\n",
      " [Iteration 1700] Validation Squared Residual: 2.87915\n",
      " [Iteration 1800] Validation Squared Residual: 2.02666\n",
      " [Iteration 1900] Validation Squared Residual: 2.25170\n",
      " [Iteration 2000] Validation Squared Residual: 1.91081\n",
      " [Iteration 2100] Validation Squared Residual: 1.50947\n",
      " [Iteration 2200] Validation Squared Residual: 0.75788\n",
      " [Iteration 2300] Validation Squared Residual: 0.71185\n",
      " [Iteration 2400] Validation Squared Residual: 0.70247\n",
      " [Iteration 2500] Validation Squared Residual: 5.81340\n",
      " [Iteration 2600] Validation Squared Residual: 1.18361\n",
      " [Iteration 2700] Validation Squared Residual: 0.91024\n",
      " [Iteration 2800] Validation Squared Residual: 0.77744\n",
      " [Iteration 2900] Validation Squared Residual: 0.78922\n",
      " [Iteration 3000] Validation Squared Residual: 0.51163\n",
      " [Iteration 3100] Validation Squared Residual: 0.96733\n",
      " [Iteration 3200] Validation Squared Residual: 0.43680\n",
      " [Iteration 3300] Validation Squared Residual: 0.48950\n",
      " [Iteration 3400] Validation Squared Residual: 0.63726\n",
      " [Iteration 3500] Validation Squared Residual: 0.44430\n",
      " [Iteration 3600] Validation Squared Residual: 0.90713\n",
      " [Iteration 3700] Validation Squared Residual: 1.38869\n",
      " [Iteration 3800] Validation Squared Residual: 0.39135\n",
      " [Iteration 3900] Validation Squared Residual: 0.65214\n",
      " [Iteration 4000] Validation Squared Residual: 0.35321\n",
      " [Iteration 4100] Validation Squared Residual: 0.28086\n",
      " [Iteration 4200] Validation Squared Residual: 4.00050\n",
      " [Iteration 4300] Validation Squared Residual: 1.01446\n",
      " [Iteration 4400] Validation Squared Residual: 0.63489\n",
      " [Iteration 4500] Validation Squared Residual: 0.49255\n",
      " [Iteration 4600] Validation Squared Residual: 0.40891\n",
      " [Iteration 4700] Validation Squared Residual: 0.29705\n",
      " [Iteration 4800] Validation Squared Residual: 1.56262\n",
      " [Iteration 4900] Validation Squared Residual: 0.68775\n",
      " [Iteration 5000] Validation Squared Residual: 0.28770\n"
     ]
    }
   ],
   "source": [
    "## define a network to approximate the PDE solution \n",
    "layersizes = [2] + [20]*9 + [1]  \n",
    "pinn = NeuralNetwork(layersizes=layersizes, activation=torch.sin)\n",
    "\n",
    "### define an optimizer \n",
    "lr = 1e-3\n",
    "update = torch.optim.Adam(params=pinn.parameters(), lr=lr)\n",
    "\n",
    "# training loop params \n",
    "maxiter = 5000\n",
    "batchsize = 500\n",
    "lmbda = 1e-5\n",
    "best_stat_dict = pinn.state_dict()\n",
    "best_val_loss = np.inf\n",
    "tval = torch.rand((200,1), requires_grad=True)\n",
    "xval = -1. + 2*torch.rand((200,1), requires_grad=True)\n",
    "\n",
    "## training loop \n",
    "for i in range(maxiter):\n",
    "    # sample a batch of data \n",
    "    tbatch = torch.rand((batchsize,1), requires_grad=True)\n",
    "    xbatch = -1. + 2*torch.rand((batchsize,1), requires_grad=True)\n",
    "    \n",
    "    # zero out the gradient buffers\n",
    "    update.zero_grad()\n",
    "    \n",
    "    # compute the regularized loss \n",
    "    loss = sqresidual(pinn, xbatch, tbatch) +\\\n",
    "           boundaryresidual(pinn, tbatch) +\\\n",
    "           initialcond_residual(pinn, xbatch) #+ L2loss(lmbda, pinn)\n",
    "    \n",
    "    # back prop to get gradients \n",
    "    loss.backward()\n",
    "    \n",
    "    # take one optimization step\n",
    "    update.step()\n",
    "    \n",
    "    # print progress \n",
    "    if (i+1)%100 == 0:\n",
    "        val_loss = sqresidual(pinn, xval, tval)\n",
    "        print(' [Iteration %4d] Validation Squared Residual: %.5f'%(i+1, val_loss))\n",
    "        if val_loss < best_val_loss:\n",
    "            best_state_dict = pinn.state_dict()\n",
    "pinn.load_state_dict(best_stat_dict);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 262,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x432 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "xtest = torch.linspace(-1., 1, 100)\n",
    "ttest = torch.linspace(0., 1, 100)\n",
    "Xtest1, Xtest2 = torch.meshgrid(xtest, ttest)\n",
    "Xtest = torch.stack([Xtest1.flatten(), Xtest2.flatten()], 1).squeeze(-1)\n",
    "Upred = pinn(Xtest).view(100, 100)\n",
    "\n",
    "plt.figure(figsize=(10, 6))\n",
    "plt.contourf(Xtest1.data.numpy(), Xtest2.data.numpy(), Upred.data.numpy().T, 100, cmap='plasma')\n",
    "plt.title('$u(x, t)$', fontsize=15)\n",
    "plt.xlabel('$x$', fontsize=15)\n",
    "plt.xlabel('$x$', fontsize=15)\n",
    "plt.colorbar()\n",
    "plt.tight_layout();"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
